﻿using System.Collections.Generic;
using System.IO;
using Zeus.Classes.Views;
using System.IO.IsolatedStorage;

namespace Zeus.Classes.Documents
{

    public enum ProjectItem_Types
    {
        Image,
        Video,
        Mesh,
        Text,
        Sound,
        Scene,
        Class,
        Reference,
        None
    }
 
    abstract public class Document
    {
        public int Doc_ID;
        public string FilePath { get; set; }
        public string FileName{ get; set; }
        public ProjectItem_Types DocType { get; set; }
        public Stream DocStream { get; set; }
        public bool IsChanged { get; set; }
        public List<View> Lview;
        
        public Document()
        {
            DocType = ProjectItem_Types.None;
            FileName = string.Empty;
            FilePath = string.Empty;
            IsChanged = false;
            DocStream = Stream.Null;
            Doc_ID = 0;
            Lview = new List<View>();
        }
        public void NotifyChanged()
        {
        }
        abstract public void Save();    // how to save the document
        abstract public void Initilize();
       
    }
}
